#import <Flutter/Flutter.h>
#import "YjHealthEventChannel.h"
#import "YJSDKClient.h"
#import "YJSDKDelegate.h"

#define yjSyncDataTypeName                  @"yjSyncDataTypeName"
#define yjUTECallBackTypeName                  @"yjUTECallBackTypeName"
#define yjCustomTypeName                  @"yjCustomTypeName"
#define yjSDKDelegateTypeName                  @"yjSDKDelegateTypeName"
/// flutter to ios 映射 iOS SDK client action
#define yjSDKClientTypeName                  @"yjSDKClientTypeName"/// flutter 透传给 ios SDK client

// flutter to ios
typedef enum : NSUInteger {
  yjSyncDataTypeConnect,///0链接蓝牙设备
  yjSyncDataTypeDisconnect,///1断开蓝牙
  yjSyncDataTypeStep,///2步数
  yjSyncDataTypeSleep,///3睡眠
  yjSyncDataTypeHRM,///4心率
  yjSyncDataTypeBlood,///5血压
  yjSyncDataTypeSaO2,///6血氧
  yjSyncDataTypeBodyTemperature,///7体温
} YJSyncDataType;

// flutter to ios
typedef enum : NSUInteger {
  yjUTECallBackTypeTime,///0时间
  yjUTECallBackTypeBattery,///1电量
  yjUTECallBackTypeDeviceInfo,///2设备信息
  yjUTECallBackTypeLongSit,///3久坐
  yjUTECallBackTypeLongSitClose,///4关闭久坐
  yjUTECallBackTypeLongSetWeather,///5设置天气
  yjUTECallBackTypeDotDisturbMode,///6勿扰
  yjUTECallBackTypeTel,///7打电话
  yjUTECallBackTypeLanguage,///8设置语言
  yjUTECallBackTypeAlarm,///9设置闹钟
} YJUTECallBackType;

// flutter to ios
typedef enum : NSUInteger {
    ///0initSdk,
    yjCustomTypeInitSdk,
    ///1搜索蓝牙
    yjCustomTypeScan,
    ///2停止搜索
    yjCustomTypeStop,
    ///3查找手机
    yjCustomTypeFindPhone,
    ///4音乐播放
    yjCustomTypeMusicPlay,
    ///5音乐上一首
    yjCustomTypeMusicLast,
    ///6音乐下一首
    yjCustomTypeMusicNext,
    ///7设置单位
    yjCustomTypeDeviceUnit,
} YJCustomType;


@interface YjHealthPlugin : NSObject<FlutterPlugin>
+ (YjHealthPlugin *)sharedInstance;
@property (nonatomic,strong) YjHealthEventChannel *eventChannel;
- (void)sendToFlutterName:(NSString *)name tag:(NSInteger)tag dict:(NSDictionary *)dict;
/// 当前的identifier
@property (nonatomic, copy) NSString *identifier;
@end
